#import <UIKit/UIKit.h>

/** 地图标注类型 */
typedef NS_ENUM(NSUInteger, AllIconType) {
    AllIconTypeIncident      = 0,
    AllIconTypeConstruct     = 1,
    AllIconTypeDangerous     = 2,
    AllIconTypeBus           = 3,
    
    AllIconTypeRecus         = 4,
    AllIconTypeRecusZero     = 5,
    
    AllIconTypeAdmin         = 6,
    AllIconTypeAdminZero     = 7,
    
    AllIconTypeRoadAdmin     = 8,
    AllIconTypeRoadAdminZero = 9,
    
    AllIconTypeCamera        = 10,
    AllIconTypeStation       = 11,
    
    AllIconTypeRamp          = 12, //扎到
    
    AllIconTypeConversation     = 13, //养护
    AllIconTypeConversationStop = 14
};

/** 设备类型 */
typedef NS_ENUM(NSUInteger, DevicesType) {
    DevicesTypeVD      = 1,// VD
    DevicesTypeBoard   = 2,//情报板
    DevicesTypeCamera  = 4,//摄像枪
    DevicesTypeCOVI    = 8 //covi
};

/** 设备方向 */
typedef NS_ENUM(NSUInteger, DirectionType) {
    
    DirectionTypeUp        = 1,  // 上行
    DirectionTypeDown      = 2,  //下行
    DirectionTypeUPAndDown = 3   //双向
};

/** 道路上下行 */
typedef NS_ENUM(NSUInteger, RoadType) {
    RoadTypeUp        = 1,  // 上行
    RoadTypeDown      = 2,  //下行
    RoadTypeUpAndDown = 3   //双向
};

/** 事件管理列表的四种标题 */
typedef NS_ENUM(NSUInteger, EventListTitleType) {
    EventListTitleTypeCurrent        = 0,  //当前事件
    EventListTitleTypeHistory        = 1,  //历史事件
    EventListTitleTypeToll           = 2,  //收费事件
    EventListTitleTypeStationData    = 3,
    EventListTitleTypeConstruct      = 4   //施工事件
};

/** 摄像枪所在位置类型 */
typedef NS_ENUM(NSUInteger, DevicesCameraGunType) {
    DevicesCameraGunTypeSquare       = 1,  //广场
    DevicesCameraGunTypeTingKong     = 2,  //亭岗
    DevicesCameraGunTypeOthers       = 3,  //其他
};

/** 收费事件类型 */
typedef NS_ENUM(NSUInteger, TollEventType) {
    TollEventTypeRealTimeFled           = 1,    //实时打逃事件
    TollEventTypeRedCard                = 2,    //冲卡事件
    TollEventTypeDispute                = 3,    //纠纷事件(不涉及收费)
    TollEventTypeTollDispute            = 4,    //纠纷事件
    TollEventTypeBlacklistInterception  = 5,    //黑名单拦截事件
    TollEventTypeEmergencyIncident      = 6,    //应急事件
    TollEventTypePowerSupplyEvent       = 7,    //供电事件
    TollEventTypeWalkthroughEvent       = 8,    //演练事件
    TollEventTypeNewSystem              = 9,    //新系统试运行
    TollEventTypeOtherType              = 10    //其他事件
};


/**  */
UIKIT_EXTERN CGFloat const ButtunMargin;

/** 主界面地图 右上角按钮的宽 高 */
UIKIT_EXTERN CGFloat const PreviewMapBtnWH;

/** 二级界面地图 右上角按钮的宽 高 */
UIKIT_EXTERN CGFloat const SecondMapBtnWH;

/** 主界面底部滑出的view的高 */
UIKIT_EXTERN CGFloat const BottomSliderViewH;

/** 主界面底部滑出的view的距离 */
UIKIT_EXTERN CGFloat const BottomSliderDistance;

/** 详情界面的视图间距 */
UIKIT_EXTERN CGFloat const DetailViewMargin;

/** 详情界面的内容间距 */
UIKIT_EXTERN CGFloat const DetailMargin ;

/** 地图高度 */
UIKIT_EXTERN CGFloat const  MapViewH ;
//
/** 当前事件详情 */
UIKIT_EXTERN CGFloat const  FirstViewH;
UIKIT_EXTERN CGFloat const  SecondViewH ;
UIKIT_EXTERN CGFloat const  ThreeViewH;
UIKIT_EXTERN CGFloat const  FourViewH;

/** 当前施工事件详情 */
UIKIT_EXTERN CGFloat const  accidentFirstViewH;
UIKIT_EXTERN CGFloat const  accidentSecViewH;
UIKIT_EXTERN CGFloat const  accidenThirdViewH;

/** 网络请求成功*/
UIKIT_EXTERN NSString *const kRORequestSuccessNotification;
/** 当前事件请求成功*/
UIKIT_EXTERN NSString *const kROCurrentRequestSuccessNotification;
/** 高速干道信息请求成功*/
UIKIT_EXTERN NSString *const kROAllHighWayRequestSuccessNotification;
/** 所有桩号信息表请求成功*/
UIKIT_EXTERN NSString *const kROAllPileNORequestSuccessNotification;
/** 所有设备信息表请求成功*/
UIKIT_EXTERN NSString *const kROAllDevicesRequsetSuccessNotification;
/** 所有收费站信息*/
UIKIT_EXTERN NSString *const KROAllTollStationRequestSuccessNotification;

/** 准备好刷新的通知 */
UIKIT_EXTERN NSString * const RORefreshReady;
/** tabBarButton被重复点击的通知 */
UIKIT_EXTERN NSString * const ROTabBarButtonRepeatClickNotification;

//GLStationChargeReport
UIKIT_EXTERN NSString * const GLStationChargeReportNotification;

UIKIT_EXTERN NSString * const GLCurrentEventShowNotification;

UIKIT_EXTERN NSString * const GLStationEventReportNotification;

UIKIT_EXTERN NSString * const GLConstructEventReportNotification ;

